The rise of the computer age has resulted in increased access to personalized services through computer networks. As the cost of electronics and networks drop, many services that were previously provided in person are now provided remotely over the Internet. For example, entertainment has increasingly shifted to the online space with companies streaming television (TV) shows and movies to members at home. Similarly, electronic mail (e-mail) has reduced the need for letters to be physically delivered. Instead, messages can be sent over networked systems almost instantly. Online social networking sites allow members to build and maintain personal and business relationships in a much more comprehensive and manageable manner.
One way that services can be increasingly useful is through the use of virtual machines that can convert generic instructions in real time to run on a variety of different electronic devices. In this way, programmers can write instructions once for the virtual machine, and the conversion to machine-specific instructions takes place automatically, thus improving efficiency.
Virtual machines need to handle interruptions on a computer device. Traditionally, this occurs by automatically inserting a series of break points into the instructions. When a break point is reached, the virtual machine executes instructions to determine whether an interrupt request has been received. However, the result of these methods is either too frequent checking for interruption of a series of instructions (if the break points are placed frequently into the instructions) or a long response time to interruption requests (if the break points are placed too infrequently into the code).
Like reference numerals refer to the same or similar parts throughout the drawings.